Database applications may be instantiated from a set of templates, based on parameters that may be gathered through a series of dialogues conducted with users. based on these parameters, the database applications may be generated programmatically, including any appropriate tables, forms, reports, and other related elements.